#include <stdio.h>
#include <unistd.h>
#include <signal.h>

void timeout(int sig)
{
    if(sig == SIGALRM) {
        puts("时间到了.");
    }
    alarm(2);
}

int main(int argc,char *argv[])
{
    struct sigaction act;
    act.sa_handler = timeout;
    sigemptyset(&act.sa_mask);
    act.sa_flags = 0;
    sigaction(SIGALRM, &act, 0);

    alarm(2);
    for(int i = 0;i < 4;++i) {
        puts("等待中。。。");
        sleep(100);
    }
    return 0;
}